#pragma once
/*
 *	Copyright © 2008 University of Houston
 *	All rights reserved.
 */
#include <arpa/inet.h>
#include <netinet/in.h>
#include <stdarg.h>
#include <stdio.h>
#include <string>
#include <sys/socket.h>
#include <sys/types.h>
#include <vector>
#include "sniffex.h"
#include "trace.h"
#include "analyzerResultList.h"

//typedef	long double 			analyzerResult;
//typedef std::vector<analyzerResult> 	analyzerResultList;

#ifdef __APPLE__	// Mac OSX does not provide a version of itoa.
char* itoa(int value, char* result, int base=10);
#endif

// A version of itoa that supports strings.
std::string itoa(int value, int base=10);

// We need this to do on-the-fly IP address comparisons
bool operator==(in_addr,in_addr);
bool operator==(sniff_tcp, sniff_tcp);

// timeval to double : used for arithmatic
long double ttod(timeval t);

// sprintf for strings!
std::string strprintf(const char* format, va_list args);

// override strtol
long strtol(const char*);

// Splits strings based on a given deliminator
std::vector<std::string> stringSplit(std::string str, std::string delim);

